//routes/person.js使用的逻辑处理函数
//导入数据操作器
const {PersonModel}=require('../db/model')
//用户列表函数
const list=async (req,res)=>{
   //拿到参数获取内容
 const {current,pagesize,is_status,gender,search}=req.query
    
        // console.log(total);
        console.log(current,pagesize,is_status,gender,search);
    //用数据库操作器获取数据
    //计算开始索引
    const start=(current-1)*pagesize
    const info={nickname:new RegExp(search),
                gender:new RegExp(gender==='all'?'':gender)
       }
       if(is_status!=='all') info.is_status=is_status-0?true:false
    const result =await PersonModel.find(info).skip(start).limit(pagesize)

    //获取总数
    const total=(await PersonModel.find(info)).length

   res.send({
       code:1,
       message:'获取用户列表成功',
       list:result,
    //    total:total,
       totalPage:Math.ceil(total/pagesize)
   })
    //先存点数据
    // const fn=(a,b)=>Math.floor(Math.random()*(b-a+1))+a
    // const str='康张刘王杜杨黎崔狗鱼土山'
    // const str2='一二三四五六七八九十'
    // const g=['保密','女','男']
    // for(let i=0;i<200;i++){
    //     PersonModel({
    //         username:'kjl000'+i,
    //         password:'K1234'+i,
    //         is_status:fn(0,1)?true:false,
    //         age:fn(18,30),
    //         gender:g[fn(0,2)],
    //         nickname:'康'+str[fn(0,11)]+str2[fn(0,9)],
    //         desc:'这个人很懒！'
    //     }).save()
    // }
}
//用户状态函数
const status=async (req,res)=>{
    // res.send({message:'来到了status逻辑处理函数'})
    //拿到参数信息
    const {id,status}=req.body
    console.log(id,status);
    //操作数据库修改信息
    await PersonModel.findByIdAndUpdate(id,{is_status:(status-0===1?true:false)})
   
    //返回给前端信息
    res.send({
        code:1,
        message:'修改用户的状态成功，当前该用户处于'+(status-0?'启用':'禁用')+'状态！'
    })
}
//导出路由处理函数
module.exports={
    list,
    status
}